import logging
from logging.handlers import RotatingFileHandler

# 创建日志记录器
logger = logging.getLogger(__name__)
logger.setLevel(logging.DEBUG)

# 创建基于文件大小轮转的处理器
# 最大文件大小为1MB（1 * 1024 * 1024字节），最多保留3个备份文件
file_handler = RotatingFileHandler(
    'app_rotating.log',
    maxBytes=1 * 1024 * 1024,
    backupCount=3,
    encoding='utf-8'
)
file_handler.setLevel(logging.DEBUG)

# 创建格式化器
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
file_handler.setFormatter(formatter)

# 添加处理器到日志记录器
logger.addHandler(file_handler)

# 循环记录大量日志，触发日志轮转
for i in range(10000):
    logger.debug(f'这是第{i + 1}条DEBUG日志')